/**
 *vn.fpt.fsoft.entities
 *ABSD_LemonNation_Mock_Two
 * PremiseProjMinor.java
 *Sep 25, 2014  4:06:46 PM   MinhNC7  
 *
 */
package vn.fpt.fsoft.entities;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * @author MinhNC7
 *
 */
@Entity
@Table(name = "PremiseProjMinor")
public class PremiseProjMinor {
	private int minorWorkID;
	private String description;
	private boolean isMinorWork;
	private boolean isTBA;
	private String notesAction;
	private String estimatedCost;
	private String actualCode;
	private int directoryID;
	private int contactID;
	private String authorByname;
	private String status;
	private Date receivedDate;
	private Date authorDate;
	private Date actStartDate;
	private Date antCompletion;
	private Date actCompleteDate;
	private PreJCPOffices preJCPOffices;
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	public int getMinorWorkID() {
		return minorWorkID;
	}
	public void setMinorWorkID(int minorWorkID) {
		this.minorWorkID = minorWorkID;
	}
	@Column(name = "Description", length = 200, nullable = true)
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
	@Column(name = "IsMinorWork")
	public boolean isMinorWork() {
		return isMinorWork;
	}
	public void setMinorWork(boolean isMinorWork) {
		this.isMinorWork = isMinorWork;
	}
	@Column(name = "IsTBA")
	public boolean isTBA() {
		return isTBA;
	}
	public void setTBA(boolean isTBA) {
		this.isTBA = isTBA;
	}
	@Column(name="NotesAction", length = 200, nullable = true)
	public String getNotesAction() {
		return notesAction;
	}
	public void setNotesAction(String notesAction) {
		this.notesAction = notesAction;
	}
	@Column( name = "EstimatedCost", length = 50, nullable = true)
	public String getEstimatedCost() {
		return estimatedCost;
	}
	public void setEstimatedCost(String estimatedCost) {
		this.estimatedCost = estimatedCost;
	}
	@Column(name ="ActualCode", length = 50, nullable = true)
	public String getActualCode() {
		return actualCode;
	}
	public void setActualCode(String actualCode) {
		this.actualCode = actualCode;
	}
	@Column(name = "DirectorateID")
	public int getDirectoryID() {
		return directoryID;
	}
	public void setDirectoryID(int directoryID) {
		this.directoryID = directoryID;
	}
	@Column(name = "ContactID")
	public int getContactID() {
		return contactID;
	}
	public void setContactID(int contactID) {
		this.contactID = contactID;
	}
	@Column(name = "AuthorisedByname",length = 50, nullable = true)
	public String getAuthorByname() {
		return authorByname;
	}
	public void setAuthorByname(String authorByname) {
		this.authorByname = authorByname;
	}
	@Column(name = "Status", length = 3, nullable = false)
	public String getStatus() {
		return status;
	}
	public void setStatus(String status) {
		this.status = status;
	}
	@Temporal(TemporalType.DATE)
	public Date getReceivedDate() {
		return receivedDate;
	}
	public void setReceivedDate(Date receivedDate) {
		this.receivedDate = receivedDate;
	}
	@Temporal(TemporalType.DATE)
	public Date getAuthorDate() {
		return authorDate;
	}
	public void setAuthorDate(Date authorDate) {
		this.authorDate = authorDate;
	}
	@Temporal(TemporalType.DATE)
	public Date getActStartDate() {
		return actStartDate;
	}
	public void setActStartDate(Date actStartDate) {
		this.actStartDate = actStartDate;
	}
	@Temporal(TemporalType.DATE)
	public Date getAntCompletion() {
		return antCompletion;
	}
	public void setAntCompletion(Date antCompletion) {
		this.antCompletion = antCompletion;
	}
	@Temporal(TemporalType.DATE)
	public Date getActCompleteDate() {
		return actCompleteDate;
	}
	public void setActCompleteDate(Date actCompleteDate) {
		this.actCompleteDate = actCompleteDate;
	}
	@ManyToOne(fetch= FetchType.LAZY)
	@JoinColumn(name="PremiseID")
	public PreJCPOffices getPreJCPOffices() {
		return preJCPOffices;
	}
	public void setPreJCPOffices(PreJCPOffices preJCPOffices) {
		this.preJCPOffices = preJCPOffices;
	}
	public PremiseProjMinor(int minorWorkID, String description,
			boolean isMinorWork, boolean isTBA, String notesAction,
			String estimatedCost, String actualCode, int directoryID,
			int contactID, String authorByname, String status,
			Date receivedDate, Date authorDate, Date actStartDate,
			Date antCompletion, Date actCompleteDate,
			PreJCPOffices preJCPOffices) {
		this.minorWorkID = minorWorkID;
		this.description = description;
		this.isMinorWork = isMinorWork;
		this.isTBA = isTBA;
		this.notesAction = notesAction;
		this.estimatedCost = estimatedCost;
		this.actualCode = actualCode;
		this.directoryID = directoryID;
		this.contactID = contactID;
		this.authorByname = authorByname;
		this.status = status;
		this.receivedDate = receivedDate;
		this.authorDate = authorDate;
		this.actStartDate = actStartDate;
		this.antCompletion = antCompletion;
		this.actCompleteDate = actCompleteDate;
		this.preJCPOffices = preJCPOffices;
	}
	public PremiseProjMinor(){}
	public PremiseProjMinor(int minorWorkID, String description,
			boolean isMinorWork, boolean isTBA, String notesAction,
			String estimatedCost, String actualCode, int directoryID,
			int contactID, String authorByname, String status,
			Date receivedDate, Date authorDate, Date actStartDate,
			Date antCompletion, Date actCompleteDate) {
		this.minorWorkID = minorWorkID;
		this.description = description;
		this.isMinorWork = isMinorWork;
		this.isTBA = isTBA;
		this.notesAction = notesAction;
		this.estimatedCost = estimatedCost;
		this.actualCode = actualCode;
		this.directoryID = directoryID;
		this.contactID = contactID;
		this.authorByname = authorByname;
		this.status = status;
		this.receivedDate = receivedDate;
		this.authorDate = authorDate;
		this.actStartDate = actStartDate;
		this.antCompletion = antCompletion;
		this.actCompleteDate = actCompleteDate;
	}
	
}
